SPSS超详细操作:两因素多元方差分析(Two-way Manova)
医咖会在之前的推文中,推送过多篇方差分析相关的文章,包括:
每种方差分析的应用场景,以及该如何进行SPSS操作和解读结果,各位伙伴请点击相应的文章链接查看~~今天,我们再来介绍一种统计方法:两因素多元方差分析(Two-way Manova)。
一、问题与数据
某研究者想研究三种干预方式(regular—常规干预;rote—死记硬背式干预;reasoning—推理式干预)对学生学习成绩的影响。
研究者记录了学生两门考试的成绩:文科成绩(humanities_score)和理科成绩(science_score)。另外,基于之前的知识,研究者假设干预方式对男女两种性别学生的效果可能不同。换言之,研究者想知道不同干预方式对学习成绩的影响在男女学生中是否不同。也就是说,干预方式和性别两个自变量之间是否存在交互作用(interaction effect)。
注:交互作用是指某一自变量对因变量的效应在另一个自变量的不同水平会不同。在本例中,就是要比较①男性中干预方式对学习成绩的影响和②女性中干预方式对学习成绩的影响。这两个效应就成为单独效应(simple main effects),也就是说,单独效应是指在一个自变量的某一水平,另一个自变量对因变量的影响。因此,交互作用也可以看做是对单独效应间是否存在差异的检验。
在本研究中,共有三个效应:性别的主效应;干预方式的主效应;性别和干预方式的交互作用。
研究者选取30名男学生和30名女学生,并将其随机分配到三个干预组中,每个干预组中共有10名男学生和10名女学生。部分数据如下:
二、对问题的分析
使用两因素多元方差分析法进行分析时,需要考虑10个假设。
对研究设计的假设:
1. 因变量有2个或以上,为连续变量;
2. 有两个自变量,为二分类或多分类变量;
3. 各观察对象之间相互独立;
对数据的假设:
4. 自变量的各个组内,各因变量间存在线性关系;
5. 自变量的各个组内,各因变量间没有多重共线性;
6. ①没有单因素离群值(univariate outliers)与②多因素离群值(multivariate outliers):单因素离群值是指自变量的各个组中因变量是否是离群值;多因素离群值是指每个研究对象(case)的各因变量组合是否是一个离群值;
7. 各因变量服从多元正态分布;
8. 样本量足够;
9. 自变量的各组观察对象之间因变量的方差协方差矩阵相等;
10. 每个因变量在自变量的各个组中方差相等。
三、流程图
(点击图片可查看大图)
四、对假设的判断
那么,进行两因素多元方差分析时,如何考虑和处理这10个假设呢?
由于假设1-3都是对研究设计的假设,需要研究者根据研究设计进行判断,所以我们主要对数据的假设4-10进行检验。
(一) 检验假设6:①是否存在单因素离群值;假设7:各因变量是否服从多元正态分布
检验单因素离群值时需要检验每一种自变量的排列组合中是否存在离群值,共有如下6种情况:
1. 首先要对数据进行拆分
(1) 在主菜单点击Data > Split File... ,如下图:
(2) 出现Split File对话框,选择Organize output by groups,会激活下方Groups Based on: 框;
(3) 将gender和intervention选入Groups Based on: 框中,点击OK;
2. 运行Explore程序,检验离群值并评估正态性;
(1) 在主菜单点击 Analyze > Descriptive Statistics > Explore... ,如下图:
(2) 出现Explore对话框;
(3) 将humanities_score和science_score选入Dependent List中,将id选入Label Cases by:框中;
(4) 点击Plots,出现下图Plots对话框;
(5) 在Boxplots下选择Dependents together,去掉Descriptive下Stem-和-leaf,选择Normality plots with tests,点击Continue,点击OK。
3. 检验假设6:①是否存在单因素离群值
(1) 下图为输出的箱式图结果。
在SPSS中,将距离箱子边缘超过1.5倍箱身长度的数据点定义为离群值,用“圆圈”表示,右上标为离群值在数据表中所对应的行数,以圆点表示;将距离箱子边缘超过3倍箱身长度的数据点定义为极端值(极端离群值),用“*”表示,右上标代表离群值在数据表中所对应的行数。
在下图中,可以看到两个单因素离群值:a)26号学生,在推理干预组的一位女学生文科分数高于同组内的;b)57号学生,在推理干预组中的一个男学生文科分数也是高于同组内的。
(2) 本例中没有出现极端值,为了方便理解,下图是出现极端值的一个举例的情况。
一般来说,极端值比离群值更难处理。但是出现离群值时就应该检查离群值,并决定选择处理方法。本例中虽然存在离群值,但是为了进行下一步,我们暂且认为不存在离群值。
(3) 离群值的处理
首先需要确定离群值出现的原因,数据中存在离群值的原因有3种:
1) 数据录入错误:首先应该考虑离群值是否由于数据录入错误所致。如果是,用正确值进行替换并重新进行检验;
2) 测量误差:如果不是由于数据录入错误,接下来考虑是否因为测量误差导致(如仪器故障或超过量程),测量误差往往不能修正,需要把测量错误的数据删除;
3) 真实存在的离群值:如果以上两种原因都不是,那最有可能是一种真实的极端数据。这种离群值不好处理,但也没有理由将其当作无效值看待。目前它的处理方法比较有争议,尚没有一种特别推荐的方法。
需要注意的是,如果存在多个离群值,应先把最极端的离群值去掉后,重新检查离群值情况。这是因为有时最极端离群值去掉后,其他离群值可能会回归正常。
离群值的处理方法分为2种:
1) 保留离群值:
对因变量进行数据转换;
将离群值纳入分析,并坚信其对结果不会产生实质影响。
2) 剔除离群值:
直接删除离群值很简单,但却是没有办法的办法。当我们需要删掉离群值时,应报告离群值大小及其对结果的影响,最好分别报告删除离群值前后的结果。而且,应该考虑有离群值的个体是否符合研究的纳入标准。如果其不属于合格的研究对象,应将其剔除,否则会影响结果的推论。另外,需要在结果部分报告对离群值处理的方式。
4. 检验假设7:各因变量是否服从多元正态分布
(1) 对于样本量较小(<50例)的研究,推荐使用Shapiro-Wilk方法检验正态性。当P<0.05(显著性水平为0.05时)时,认为不是正态分布。
本例中,共有六种自变量的分类组合和两个因变量,所以会出现12行结果。由于对各因变量进行了6次检验,所以新的显著性水平 = 0.05 ÷ 6 = 0.0083。本例中,由于所有的P值都大于0.0083,所以两个因变量文科成绩和理科成绩服从正态分布。
(2) 不服从正态分布的处理
如果数据不服从正态分布,可以有如下3种方法进行处理:
1) 数据转换:对转换后呈正态分布的数据进行方差分析。当各组因变量的分布相同时,正态转换才有可能成功。对于一些常见的分布,有特定的转换形式,但是转换后的数据结果可能较难解释。
2) 直接进行分析:由于多元方差分析对于偏离正态分布有一定的抗性,尤其是在各组样本量相等或近似相等的情况下,而且非正态分布实质上并不影响犯I型错误的概率。因此可以直接进行检验,但是结果中需要报告对正态分布的偏离。
3) 如果想知道不服从正态分布是否会影响方差分析的结果,可以比较转换后数据的分析结果和直接进行分析的结果,如果两个结果是同样的结论,则不需要对因变量进行转换。
(二) 检验假设4:自变量的各个组内,各因变量之间存在线性关系
1. 在上述数据拆分的基础上,在主菜单下点击Graphs > Legacy Dialogs > Scatter/Dot....,如下图所示:
2. 出现Scatter/Dot对话框,如下图所示;
3. 点击Matrix Scatter,点击Define,出现 Scatterplot Matrix对话框;
4. 将humanities_score和science_score选入Matrix Variables:框中,将intervention选入Rows:框中,将gender选入Columans:框中,点击OK;
5. 在如下结果中可以看到每一种自变量组合里humanities_score和science_score的散点图,除了两因变量在推理干预的女学生中的线性关系不是很理想,其他组的线性关系明显,我们这里接受假设4。
如果不存在线性关系,可以通过3种方式进行处理:(1) 对1个或多个因变量进行转换;(2) 去除掉不存在线性关系的因变量;(3) 直接进行分析,尽管统计效能会降低。
(三) 检验假设5:各因变量之间是否存在多重共线性
1. 在上述数据拆分的基础上,在主菜单下点击 Correlate > Bivariate...,如下图所示:
2. 出现Bivariate Correlations对话框,如下图;
3. 将humanities_score和science_score选入Variables,点击OK。
4. 结果如下图所示,可以看到自变量的各个组合中humanities_score和science_score的Pearson相关系数。
理想状态下,在做多元方差分析时,各个因变量之间应该存在一定程度的相关关系,但相关性不能太强,如果相关性太强(高于0.9),则存在多重共线性,多元方差分析的假设则不再满足。
在下表中突出显示的相关系数在-0.851~0.721之间,因变量间不存在多重共线性(|r| < 0.9)。
5. 存在多重共线性的处理方法
如果数据具有多重共线性,可以有如下2种方法进行处理:
(1)删除具有多重共线性的一个因变量,也是最常用的方法;
(2)可以通过主成分分析将具有多重共线性的多个因变量汇总成一个新的因变量,这样做往往是理论上必须保留所有因变量。
(四) 检验假设6:②是否存在多因素离群值
多因素离群值是指因变量的组合是异常值。可以通过计算马氏距离(Mahalanobis distance)来判断某个研究对象是否为多因素离群值。
1. 在主菜单下点击 Analyze >Regression >Linear...,如下图所示:
2. 出现Linear Regression对话框,将id选入Dependent框中,将humanities_score和science_score选入Independent(s)中,如下图所示;
3. 点击Save,出现Linear Regression:Save对话框,点击Distances下的Mahalanobis,即马氏距离,点击Continue,点击OK。
4. 在主界面下,可以看到出现新变量MAH_1;
5. 选中MAH_1变量,右键,选择Sort Descending,对新变量进行降序排列;
6. 如下图所示,是对马氏距离降序排列后的数据界面;
7. 马氏距离需要根据下表中Critical Value进行对比,下表中Critical Value是在α=0.001时不同变量数对应的卡方分布的卡方值,由于本例中因变量有2个,对应的Critical Value为13.82,而本例中马氏距离最大值为5.21444<13.82,所以不存在多因素离群值。
8. 如果存在多因素离群值,首先要确定多因素离群值存在的原因,原因主要有三种:数据录入错误;测量错误;真实存在的异常值。
处理方法分为2种:
(1) 保留离群值:
1) 将因变量转换成其他形式,然而转换后的结果比较难解释,如果选择变换,需要对所有的假设进行重新检验;
2) 将离群值纳入分析,理想情况下,需要找到一个方法能够评估离群值对分析结果的影响。可以分别纳入多因素离群值和剔除多因素离群值进行分析,并对两个分析结果进行比较。如果两者结论一致,则可以保留多因素离群值。
(2) 剔除离群值:
直接删除离群值很简单,是常用的办法。当我们需要删掉离群值时,应该注意一个离群值可能会掩盖另一个离群值的存在。所以在删除离群值后,应重新进行对假设的检验。最后需要在结果中报告删除的离群值和原因。
9. 需要去除之前对数据的拆分。在主菜单下点击Data > Split File...,如下图所示:
10. 出现Split File对话框,点击Analyze all cases,do not create groups,点击OK。
五、多元方差的SPSS操作
(一) SPSS操作
1. 在主菜单下点击Analyze >General Linear Model >Multivariate...,如下图所示:
2. 出现Multivariate对话框,将humanities_score和science_score选入Dependent Variables,将gender和intervention选入Fixed Factor(s),点击Post Hoc;
3. 出现Multivariate: Post Hoc Multiple Comparisons for Observed Means对话框,将gender和intervention选入Post Hoc Tests for,在Equal Variances Assumed下方选择Tukey,点击Continue;
4. 点击Options,出现Multivariate: Options对话框,如下图所示;
5. 将gender和intervention选入Display Means for:下方,并同时选中gender和intervention,将交互项gender*intervention选入Display Means for:下方,勾选Display下方的Descriptive statistics、Estimates of effect size和Homogeneity tests,点击Continue,点击Paste。
6. 出现如下图所示的语法编辑器页面;
7. 找到第8行语法:/EMMEANS=TABLES(gender*intervention),并在其后加上空格,加上语法:COMPARE(gender) ADJ(BONFERRONI),如下图所示;
注释:COMPARE()表示主效应的执行命令,COMPARE(gender)表示会输出gender对因变量的主效应,ADJ(BONFERRONI)是进行主效应间两两比较的命令,并对显著性水平进行Bonferroni校正。
8. 复制/EMMEANS=TABLES(gender*intervention) COMPARE(gender) ADJ(BONFERRONI),并将其黏贴至下一行,将gender改成intervention,如下图所示;
9. 在主菜单下点击RUN> All,如下图所示。
(二) 检验假设8:样本量足够
多元方差分析中的样本量足够是指自变量的每组中的例数要不少于因变量个数,本例中因变量有2个,所以自变量每组中至少有2例才能满足样本量足够的假设。在输出的结果的Descriptive Statistics表中可以看到每组10例,满足条件。
(三) 检验假设9:自变量的各组观察对象之间因变量的方差协方差矩阵相等
在输出的结果的Box's Test of Equality of Covariance Matrices表中,如果P<0.001,则违反了协方差矩阵相等的假设;如果P>0.001,则协方差矩阵相等的假设成立。
本例中,P=0.009>0.001, 所以各组观察对象因变量的方差协方差矩阵相等的假设成立。大家可能注意到此时的显著性水平是0.001而非0.05,这是由于该检验的敏感性所以下调了显著性水平。
如果检验发现方差协方差矩阵不相等,可以不进行处理,但是需要用Pillai’s criterion统计量而非Wilks' Lambda,因为Pillai's criterion对于不相等的协方差矩阵更稳健。
(四) 检验假设10:每个因变量在自变量的各个组中是否方差相等。
在输出的结果的Levene's Test of Equality of Error Variances表中,该检验中如果P<0.05,则方差不相等;如果P>0.05,则方程相等。本例中,P值均大于0.05(分别为P=0.750和P=0.964),所以方差相等的假设成立。
如果检验发现方差不等,有2种方法进行处理:(1)对因变量进行转换,并重新进行所有的检验;(2)不进行处理,并接受较高的α水平,即犯I类错误的概率可能增大。
六、结果解释
在结果解释之前,我们需要先明确几个概念:单独效应、主效应和交互作用。
单独效应(simple effect):指其他因素的水平固定时,同一因素不同水平间的差别。例如,当A因素固定在第1个水平时,B因素的单独效应为20;当A因素固定在第2个水平时,B因素的单独效应为24。
主效应(main effect):指某一因素的各水平间的平均差别。例如,当A因素固定在第1个水平时,B因素的单独效应为20;当A因素固定在第2个水平时,B因素的单独效应为24。平均后得到B因素的主效应(20+24)/2=22。
交互作用(interaction):当某因素的各个单独效应随另一因素变化而变化时,则称这两个因素间存在交互作用。
当存在交互作用时,单独分析主效应的意义不大,需要逐一分析各因素的单独效应;当不存在交互作用时,说明两因素的作用效果相互独立,逐一分析各因素的主效应即可。
1. 多元方差分析的交互作用的结果
(1) 在Multivariate Tests表中,Pillai's Trace、Wilks' Lambda、 Hotelling's Trace和Roy's Largest Root为四个多元统计量,用于检验组间差异。首先要判断两个自变量之间是否存在交互作用,最常用的统计量为Wilks' Lambda,该检验P<0.05时,自变量之间存在交互作用。
本例中,交互项的F=4.046,P=0.004,Wilks' Λ=0.753; partial η2=0.132,所以gender和intervention之间存在交互作用,即干预对学生成绩的影响在男女之间存在差异。
(2) 发现交互项对因变量有影响后,我们还需要判断交互项对哪个因变量有作用。Tests of Between-Subjects Effects表实际上是对因变量单独进行一元方差分析的结果。P<0.05时,自变量对因变量的影响存在统计学意义;P≥0.05时,自变量对因变量的影响不存在统计学意义。
本例中,我们看交互项对两个因变量的影响,发现交互项对文科成绩的影响有统计学意义(P=0.003),而对理科成绩的影响不存在统计学意义(P=0.056)。
2. 单独效应(simple main effect)的结果
(1) gender的单独效应(simple main effect)
在Univariate Tests中输出了在干预的不同组中,学习成绩在男女中是否存在差异。
我们以文科成绩为例,如下表所示,可见Regular(P=0.664)和Rote(P=0.086)干预组中男女生文科成绩的差异不存在统计学意义,在Reasoning干预组中男女成绩的差异具有统计学意义(P=0.002)。
(2) intervention的单独效应(simple main effect)
相似的,以文科成绩为例,未发现在女学生中不同干预方式对文科成绩的影响,但在男学生中不同干预方式对文科成绩的影响具有统计学意义(P<0.001)。
然而,由于intervention是三分类变量,我们如果想知道到底是那两个组之间存在差异,就需要进行两两比较。下表是两两比较的结果。对于每科成绩和每种性别,都进行了三种干预方式的两两比较:regular与rote,regular与reasoning,reasoning与rote。
下面我们看一下因变量为文科成绩时,在男性中,在Mean Difference(I-J)列可以看到regular组与rote组文科成绩平均值差值为1.600,但是regular与rote两种干预方式的比较P=1.000,说明两者之间的差异不具有统计学意义。
相似的,在男性中,reasoning组与regular组的文科成绩平均值差值为9.600,差异具有统计学意义(P<0.001)。
3. 多元方差分析的主效应
(1) Gender的主效应
如下图突出显示中,gender对因变量的主效应不具有统计学意义,F=0.900,P=0.413,Wilks' Λ=0.967; partial η2=0.033。
(2) Intervention的主效应
如下图突出显示中,intervention对因变量的主效应具有统计学意义,F=6.220,P<0.001,Wilks' Λ=0.656; partial η2=0.190。
当多元方差分析的主效应对因变量有意义时,需要解读单因素分析的主效应结果(univariate main effects),这部分结果在Tests of Between-Subjects Effects表中。
如下图所示,干预方式对文科成绩的影响具有统计学意义(P<0.001),而对理科成绩的影响不存在统计学意义(P=0.153)。
由于干预方式是三分类变量,我们下面需要看两两比较的结果。如下图所示,可以看到三种干预方式对文科成绩影响两两比较的结果。
Regular组和rote组的文科成绩差异不具有统计学意义(P=0.896),regular组和reasoning组文科成绩的差异具有统计学意义(P<0.001),rote组和reasoning组文科成绩的差异具有统计学意义(P<0.001)。
七、撰写结论
1. 当自变量之间存在交互作用时
运用两因素多元方差分析方法对性别和干预方式对学生学习成绩(包括文科成绩和理科成绩)的影响进行分析。
分析前对方法的假设进行检验:散点图发现自变量的各个组内,因变量间存在线性关系;Pearson相关发现两因变量之间不存在多重共线性(|r|<0.9);通过箱式图未发现单因素离群值,通过马氏距离未发现多元离群值(P>0.001);
Shapiro-Wilk检验显示两因变量(文科成绩和理科成绩)服从正态分布(P>0.05); Box's M检验显示自变量的各个组内两个因变量的方差协方差矩阵相等(P=0.009);Levene's检验显示自变量各个组内因变量方差相等(P>0.05)。
性别和干预方式的交互作用对因变量的影响存在统计学意义, F=4.046,P=0.004,Wilks' Λ=0.753; partial η2=0.132,即干预对学生成绩的影响在男女之间存在差异。
多元方差分析显示性别和干预方式的交互作用对文科成绩的影响有统计学意义(F=6.406, P=0.003;partial η2=0.192),但对理科成绩的影响不具有统计学意义(F=3.034, P=0.056;partial η2=0.101)。
单因素主效应分析显示在男学生中不同干预方式对文科成绩的影响具有统计学意义(F=17.283, P<0.001;partial η2=0.390),但在女学生中不同干预方式对文科成绩的影响无统计学意义(F=1.785, P=0.178;partial η2=0.062)。
因此,在男学生中对不同干预组的文科成绩进行了两两比较。成绩用均值±标准差表示。男生文科平均成绩在常规干预组为61.40±5.23,在死记硬背式干预组中为59.80±5.22,在推理干预组中为71.00±3.33。
常规干预组与推理干预组的文科成绩差值为9.60(95%CI:4.51-14.69,P<0.001),具有统计学意义;死记硬背干预组与推理干预组的文科成绩差值为11.20(95%CI:6.11-16.29,P<0.001),具有统计学意义;常规干预组与死记硬背干预组的文科成绩差值为1.60(95%CI:-3.49-6.69,P=1.000),不具有统计学意义。
2. 当自变量之间不存在交互作用时
运用两因素多元方差分析方法对性别和干预方式对学生学习成绩(包括文科成绩和理科成绩)的影响进行分析。
分析前对方法的假设进行检验:散点图发现自变量的各个组内因变量间存在线性关系;Pearson相关发现两因变量之间不存在多重共线性(|r|<0.9);通过箱式图未发现单因素离群值,通过马氏距离未发现多元离群值(P>0.001);
Shapiro-Wilk检验显示两因变量(文科成绩和理科成绩)服从正态分布(P>0.05); Box's M检验显示自变量的各个组内两个因变量的方差协方差矩阵相等(P=0.009);Levene's 检验显示自变量各个组内因变量方差相等(P>0.05)。
性别和干预方式的交互作用对因变量的影响不存在统计学意义, F=1.026,P=0.264,Wilks' Λ=0.953; partial η2=0.022。
多元方差分析显示干预方式对文科成绩的影响具有统计学意义(F=12.661, P<0.001;partial η2=0.319),但对理科成绩的影响不具有统计学意义(F=1.944, P=0.153;partial η2=0.067)。
因此,对不同干预组的文科成绩进行了两两比较。成绩用均值±标准差表示。常规干预组的文科平均成绩为60.95±1.03,死记硬背式干预组的文科平均成绩为61.60±1.03,推理干预组的文科平均成绩为67.60±1.03。
常规干预组与推理干预组的文科成绩差值为6.65(95%CI:3.14-10.16,P<0.001),具有统计学意义;死记硬背干预组与推理干预组的文科成绩差值为6.00(95%CI:2.49-9.51,P<0.001),具有统计学意义;常规干预组与死记硬背干预组的文科成绩差值为0.65(95%CI:-2.82-4.16,P=0.896),不具有统计学意义。
(如果你想使用文中数据进行练习,请随时给小咖(微信:xys2016ykf)发消息,小咖将原始数据发给你。)
更多阅读
关注医咖会,轻松学习统计学~
有临床研究设计或统计学方面的难题?快加小咖个人微信(xys2016ykf),拉你进统计讨论群和众多热爱研究的小伙伴们一起交流学习。如果想进群,添加小咖时请注明“加群”二字。
点击左下角“阅读原文”,看看医咖会既往推送了哪些统计教程。